package cn.element.io.bio.case1;

import java.io.IOException;
import java.io.OutputStream;
import java.io.PrintStream;
import java.net.Socket;

public class Client {

    public static void main(String[] args) {
        try {
            // 1.创建一个Socket对象请求服务器的连接
            // 客户端调connect()
            Socket socket = new Socket("127.0.0.1", 8848);

            // 2.从Socket对象中获取一个字节输出流
            // 输入输出流的理解： 首先相对于本机而言：输入和输出都是相对于内存来说的。文件输入到内存就得有个输入流，输出到文件就得有个输出流。
            // 内存输出到网络就得有个输出流，网络输入到内存就得有个输入流。
            // 这里是客户端，所以是输出到网络，所以是输出流。
            OutputStream os = socket.getOutputStream();

            // 3.把字节输出流包装成一个打印流
            PrintStream ps = new PrintStream(os);
            ps.println("Hello World");
            ps.flush();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}
